#ifndef ICPEMAINUI_H
#define ICPEMAINUI_H

#include <QWidget>
#include <QString>
#include <QJsonArray>

class ICpeMainUI
{
public:
    virtual ~ICpeMainUI() = default;

    virtual void startPlugin() = 0;

    /**
     * @brief addTab    插入选项卡
     * @param widget    QWidget指针
     * @param strName   选项卡名称
     * @param isLeft    是否放到左边
     */
    virtual void addTab(QWidget *widget, const QString &strName, bool isLeft = false) = 0;

    /**
     * @brief updateMessage 显示消息
     * @param str           消息
     */
    virtual void updateMessage(const QString &str) = 0;

    /**
     * @brief uncheckAutoRefresh 取消对自动刷新的勾选
     */
    virtual void uncheckAutoRefresh() = 0;

    /**
     * @brief getCurrentVersion 获取版本
     * @return
     */
    virtual QString getCurrentVersion() = 0;

    /**
     * @brief refreshAD 刷新广告
     * @return
     */
    virtual void refreshAD(const QJsonArray &jarr) = 0;
};

QT_BEGIN_NAMESPACE
Q_DECLARE_INTERFACE(ICpeMainUI, "com.kk.cpemanager.icpemainui")
QT_END_NAMESPACE

#endif // ICPEMAINUI_H
